Previous Book Contents Book Index Next

Inside Macintosh: /
QuickDraw 3D RAVE / QuickDraw 3D RAVE Reference
Data Structures


Draw Context Structure

QuickDraw 3D RAVE drawing routines operate on a draw context, which maintains state information and other data associated with a drawing engine. You access a draw context using a draw context structure, defined by the TQADrawContext data type.

IMPORTANT
You should not directly access the fields of a draw context structure. Instead, you should use the draw context manipulation macros defined by QuickDraw 3D RAVE. See "Manipulating Draw Contexts," beginning on page 1-94 for more information.
struct TQADrawContext {
   TQADrawPrivate             *drawPrivate;
   const TQAVersion           version;
   TQASetFloat                setFloat;
   TQASetInt                  setInt;
   TQASetPtr                  setPtr;
   TQAGetFloat                getFloat;
   TQAGetInt                  getInt;
   TQAGetPtr                  getPtr;
   TQADrawPoint               drawPoint;
   TQADrawLine                drawLine;
   TQADrawTriGouraud          drawTriGouraud;
   TQADrawTriTexture          drawTriTexture;
   TQADrawVGouraud            drawVGouraud;
   TQADrawVTexture            drawVTexture;
   TQADrawBitmap              drawBitmap;
   TQARenderStart             renderStart;
   TQARenderEnd               renderEnd;
   TQARenderAbort             renderAbort;
   TQAFlush                   flush;
   TQASync                    sync;
   TQASubmitVerticesGouraud   submitVerticesGouraud;
   TQASubmitVerticesTexture   submitVerticesTexture;
   TQADrawTriMeshGouraud      drawTriMeshGouraud;
   TQADrawTriMeshTexture      drawTriMeshTexture;
   TQASetNoticeMethod         setNoticeMethod;
   TQAGetNoticeMethod         getNoticeMethod;
};
typedef struct TQADrawContext TQADrawContext;
Field Description
drawPrivate
A pointer to the private data for the drawing engine associated with this draw context.
version
The version of QuickDraw 3D RAVE. This field is initialized when you call QADrawContextNew. See "Version Values" (page 1-35) for the currently defined version numbers.
setFloat
A function pointer to the drawing engine's method for setting floating-point state variables.
setInt
A function pointer to the drawing engine's method for setting unsigned long integer state variables.
setPtr
A function pointer to the drawing engine's method for setting pointer state variables.
getFloat
A function pointer to the drawing engine's method for getting floating-point state variables.
getInt
A function pointer to the drawing engine's method for getting unsigned long integer state variables.
getPtr
A function pointer to the drawing engine's method for getting pointer state variables.
drawPoint
A function pointer to the drawing engine's method for drawing points.
drawLine
A function pointer to the drawing engine's method for drawing lines.
drawTriGouraud
A function pointer to the drawing engine's method for drawing triangles with Gouraud shading.
drawTriTexture
A function pointer to the drawing engine's method for drawing texture-mapped triangles.
drawVGouraud
A function pointer to the drawing engine's method for drawing vertices with Gouraud shading.
drawVTexture
A function pointer to the drawing engine's method for drawing texture-mapped vertices.
drawBitmap
A function pointer to the drawing engine's method for drawing a bitmap.
renderStart
A function pointer to the drawing engine's method for initializing in preparation for rendering.
renderEnd
A function pointer to the drawing engine's method for completing a rendering operation and displaying an image.
renderAbort
A function pointer to the drawing engine's method for canceling the current rendering operation and flushing any queued operations.
flush
A function pointer to the drawing engine's method for starting to render all queued drawing commands.
sync
A function pointer to the drawing engine's method for waiting until all queued drawing commands have been processed.
submitVerticesGouraud
A function pointer to the drawing engine's method for submitting Gouraud vertices.
submitVerticesTexture
A function pointer to the drawing engine's method for submitting texture vertices.
drawTriMeshGouraud
A function pointer to the drawing engine's method for drawing triangle meshes with Gouraud shading.
drawTriMeshTexture
A function pointer to the drawing engine's method for drawing texture-mapped triangle meshes.
setNoticeMethod
A function pointer to the drawing engine's method for setting a notice method.
getNoticeMethod
A function pointer to the drawing engine's method for getting a notice method.

Previous Book Contents Book Index Next

© Apple Computer, Inc.
28 AUG 1996